package com.wskj.workbench.mapper;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.wskj.common.core.mybatisplus.core.BaseMapperPlus;
import com.wskj.workbench.bo.app.AppRankQueryBo;
import com.wskj.workbench.bo.app.AppRankTypeQueryBo;
import com.wskj.workbench.bo.app.AppSearchQueryBo;
import com.wskj.workbench.bo.app.AppSysUserQueryBo;
import com.wskj.workbench.domain.TbUserWalletDetail;
import com.wskj.workbench.vo.app.*;
import org.apache.ibatis.annotations.Param;

import java.math.BigDecimal;
import java.util.List;


/**
 * 用户的钱包明细Mapper接口
 *
 * @author wskj
 * @date 2024-09-25
 */
public interface TbUserWalletDetailMapper extends BaseMapperPlus<TbUserWalletDetail> {


    AppSearchItemVo search(@Param("bo") AppSearchQueryBo bo, @Param("detailType") String detailType);

    AppSearchItemVo searchTixian(@Param("bo") AppSearchQueryBo bo);

    Page<AppRankVo> getTypePage(@Param("page") Page<AppRankVo> page, @Param("bo") AppRankTypeQueryBo bo);

    Page<AppRankVo> getRankPage(@Param("page") Page<AppRankVo> page, @Param("bo") AppRankQueryBo bo, @Param("userId") Long userId);

    List<AppCurrentRankVo> getRankCurrent(@Param("bo") AppRankQueryBo bo, @Param("userId") Long userId);

    BigDecimal getYesterdeyAmount(@Param("userId") Long userId);

    BigDecimal getYesterdeyTixianAmount(@Param("userId") Long userId);

}
